/**
 * Generali Solutions d'assurances - Tous droits réservés &copy; 2007 - 2010
 */
package fr.generali.accueilclient.client.assembler.output.p10;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.core.convert.converter.Converter;
import org.springframework.stereotype.Component;

import fr.generali.accueilclient.client.om.IPersonnePhysique;
import fr.generali.accueilclient.client.om.impl.PersonnePhysique;
import fr.generali.refservcommuns.rce.recherche.nonqualifie.pty.personnes.DTOPersonnePhysique;

/**
 * Transforme un {@link DTOPersonnePhysique} en {@link IPersonnePhysique}
 * 
 * @author selrhazala
 */
@Component("dtoPersonnePhysiqueResume2PersonnePhysiqueConverter")
public class DTOPersonnePhysique2PersonnePhysiqueConverter implements
    Converter<DTOPersonnePhysique, IPersonnePhysique> {
    
    /**
     * LOGGER
     */
    private static final Logger LOGGER =
                    LoggerFactory.getLogger(DTOPersonnePhysique2PersonnePhysiqueConverter.class);

    /**
     * {@inheritDoc}
     */
    public IPersonnePhysique convert(DTOPersonnePhysique input) {
        LOGGER.debug("assemble");
        IPersonnePhysique personne = new PersonnePhysique();

        personne.setCivilite(input.getCivilite());
        if (input.getDateNaissance() != null) {
            personne.setDateNaissance(input.getDateNaissance().toGregorianCalendar().getTime());
        }
        personne.setNom(input.getNom());
        personne.setPrenom(input.getPrenom());

        return personne;
    }
}
